package com.ly.thread;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;

public class ThreadMap {
    public static void main(String[] args) {
//        Map<String,String> map = new HashMap<String, String> ();
//        for(int i=0;i<10;i++) {
//            new Thread(() -> {
//                map.put(UUID.randomUUID().toString(),UUID.randomUUID().toString());
//                System.out.println(map);
//                },i+"").start();
//        }
//        解决方案
//        1.txt.
//        Map<String,String> map = Collections.synchronizedMap(new HashMap<>());
//        for(int i=0;i<10;i++) {
//            new Thread(() -> {
//                map.put(UUID.randomUUID().toString(),UUID.randomUUID().toString());
//                System.out.println(map);
//                },i+"").start();
//        }
//        2.
        Map<String,String> map = new ConcurrentHashMap<>();
        for(int i=0;i<10;i++) {
            new Thread(() -> {
                map.put(UUID.randomUUID().toString(),UUID.randomUUID().toString());
                System.out.println(map);
            },i+"").start();
        }
    }

}
